package com.joolun.weixin.entity;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.joolun.common.annotation.Excel;
import com.joolun.common.core.domain.BaseEntity;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 渠道数据日志对象 scrm_channel_record_log
 * 
 * @author joolun
 * @date 2025-04-11
 */
@Data
public class ScrmChannelRecordLog extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;

    /** 投放计划ID */
    @Excel(name = "投放计划ID")
    private Long planId;

    /** 渠道用户 */
    @Excel(name = "渠道用户")
    private Long userName;

    /** 操作类型 */
    @Excel(name = "操作类型")
    private String type;

    /** 企业ID */
    @Excel(name = "企业ID")
    private String extCorpId;

    /** 外部用户ID */
    @Excel(name = "外部用户ID")
    private String extCustomerId;

    /** 操作时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "操作时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date addTime;

    /** 操作日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "操作日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date addDate;

    /** 状态 */
    @Excel(name = "状态")
    private String status;

    /** 性别 */
    @Excel(name = "性别")
    private Integer gender;

    /** 是否首日删友 */
    private Integer firstDayDelFriend;
    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setPlanId(Long planId) 
    {
        this.planId = planId;
    }

    public Long getPlanId() 
    {
        return planId;
    }
    public void setUserName(Long userName) 
    {
        this.userName = userName;
    }

    public Long getUserName() 
    {
        return userName;
    }
    public void setType(String type) 
    {
        this.type = type;
    }

    public String getType() 
    {
        return type;
    }
    public void setExtCorpId(String extCorpId) 
    {
        this.extCorpId = extCorpId;
    }

    public String getExtCorpId() 
    {
        return extCorpId;
    }
    public void setExtCustomerId(String extCustomerId) 
    {
        this.extCustomerId = extCustomerId;
    }

    public String getExtCustomerId() 
    {
        return extCustomerId;
    }
    public void setAddTime(Date addTime) 
    {
        this.addTime = addTime;
    }

    public Date getAddTime() 
    {
        return addTime;
    }
    public void setAddDate(Date addDate) 
    {
        this.addDate = addDate;
    }

    public Date getAddDate() 
    {
        return addDate;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("planId", getPlanId())
            .append("userName", getUserName())
            .append("type", getType())
            .append("extCorpId", getExtCorpId())
            .append("extCustomerId", getExtCustomerId())
            .append("addTime", getAddTime())
            .append("addDate", getAddDate())
            .append("status", getStatus())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
